// 全局过滤器
Vue.filter('dateFormat',function(d){
    // 创建日期对象
    let date=new Date(d);
    // 获取对象的年，月，日
    let year=date.getFullYear();
    // 小于10的月份和日期前面补0
    let month=date.getMonth()+1 <10 ? "0"+(date.getMonth()+1) : date.getMonth()+1;
    let day=date.getDay()<10 ? "0"+(date.getDay()) : date.getDay();

    return year+"-"+month+"-"+day;
});

let app = new Vue({
    el:'#app',
    data:{
        user:JSON.parse(sessionStorage.getItem("user")),
        unreadNum:sessionStorage.getItem("unreadNum"),
        logs:[]
        
    },
    created(){
        // 查询当前用户的所有日志记录
       $.ajax({
           url:'http://localhost:8080/log/selectAll',
           type:'get',
           data:{userId:this.user.userId},
           success:function(vo){
                if(vo.code==200){
                    app.logs=vo.data;
                    
                }
           }
       });
        
    },
    methods:{
        // 修改个人信息
        update:function(){
            if($("#realName").val()=="" || $("#userLevel").val()==""){
                layer.msg("必填字段不能为空",{offset:'t',icon:5});
                return;
            }

            $.ajax({
                url:'http://localhost:8080/user/update',
                type:'post',
                data:$("#personForm").serialize(),
                success:function(vo){
                    if(vo.code==200){
                        // 修改成功重新设置用户信息会话存储数据
                        let newUser={
                            userId:app.user.userId,
                            userName:app.user.userName,
                            password:app.user.password,
                            realName:$("#realName").val(),
                            phone:$("#phone").val(),
                            sex:$("#sex").val(),
                            age:$("#age").val(),
                            birthday:$("#date").val(),
                            userLevel:$("#userLevel").val(),
                            role:app.user.role,
                            image:app.user.image,
                            status:app.user.status,
                            createTime:app.user.createTime
                        }
                        sessionStorage.setItem("user",JSON.stringify(newUser));
                        app.user=JSON.parse(sessionStorage.getItem("user"));

                        // 修改成功添加当前用户的一条日志记录
                        let formData={
                            userId:app.user.userId,
                            userName:app.user.userName,
                            realName:app.user.realName,
                            content:'更新了个人资料'
                        }
                        $.ajax({
                            url:'http://localhost:8080/log/add',
                            type:'post',
                            data:formData,
                            success:function(vo2){
                                if(vo2.code==200){
                                    // 添加日志成功再重新查询所有日志
                                    $.ajax({
                                        url:'http://localhost:8080/log/selectAll',
                                        type:'get',
                                        data:{userId:app.user.userId},
                                        success:function(vo3){
                                            if(vo3.code==200){
                                                app.logs=vo3.data;
                                            }
                                        }
                                    });
                                }
                                
                            }
                        });

                        layer.msg(vo.data,{offset:'t',icon:6});
                    }else{
                        layer.msg(vo.message,{offset:'t',icon:5});
                    }
                }
            });
        },
        // 修改密码
        updatePass:function(){
            let oldPass = $("#oldPass").val();
            let newPass = $("#newPass").val();
            let newPass2 = $("#newPass2").val();
            
            if(oldPass=='' || newPass=='' || newPass2==''){
                layer.msg("请填入完整信息",{offset:'t',icon:5});
                return;
            }
            if(newPass!=newPass2){
                layer.msg("两次密码输入不一致，请重试",{offset:'t',icon:5});
                return;
            }
            if(oldPass!=this.user.password){
                layer.msg("旧密码输入错误",{offset:'t',icon:5});
                return;
            }

            $.ajax({
                url:'http://localhost:8080/user/update',
                type:'post',
                data:{password:newPass,userId:this.user.userId},
                success:function(vo){
                    if(vo.code==200){

                        // 修改成功则添加当前用户的一条日志记录
                        let formData={
                            userId:app.user.userId,
                            userName:app.user.userName,
                            realName:app.user.realName,
                            content:'修改了密码'
                        }
                        $.ajax({
                            url:'http://localhost:8080/log/add',
                            type:'post',
                            data:formData,
                            success:function(vo){

                            }
                        });

                        layer.msg(vo.data+",将于3秒后进行重新登录......",{offset:'t',icon:6});
                        
                        // 延迟3秒执行代码
                        setTimeout(function(){
                            // 清楚会话存储的所有对象
                            sessionStorage.clear();

                            location.href = '../login/login.html';
                        },3000);
                        
                    }else{
                        layer.msg(vo.message,{offset:'t',icon:5});
                    }
                }
            });
        }
    }

});